#pragma once
#include<stdio.h>
#include<stdlib.h>
#include<assert.h>

typedef int TLDataType;

typedef struct DList
{
	TLDataType data;
	struct DList* next;
	struct DList* prev;
}DList;

DList* DListFind(DList* pphead, TLDataType x);


void DListPrint(DList* pphead);
void DListInit(DList** pphead);

void DListPushBack(DList* pphead, TLDataType x);

void DListPushFront(DList* pphead, TLDataType x);


void DListPopBack(DList* pphead);

void DListPopFront(DList* pphead);

void DListPushPosBack(DList* pos, TLDataType x);

void DListPopPosBack(DList* pos);



void DListDestory(DList* pphead);
